﻿using EasyAdmin.Domain.Entities.Systems;
using EasyAdmin.Domain.Shared.Enums;
using EasyCore.ObjectMapper;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace EasyAdmin.Application.Contracts.Systems.Orgs.Dtos
{
    [MapTo(typeof(SysOrg))]
    [MapFrom(typeof(SysOrg))]
    public class OrgOutput
    {
        /// <summary>
        /// 唯一标识
        /// </summary>
        public long Id { get; set; }

        /// <summary>
        /// 父机构唯一标识
        /// </summary>   
        public long ParentId { get; set; }

        /// <summary>
        /// 父机构名称
        /// </summary>
        public string ParentOrgName { get; set; }
        
        /// <summary>
        /// 组织名称
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 组织全称
        /// </summary>
        public string FullName { get; set; }

        /// <summary>
        /// 机构类型
        /// </summary>   
        public OrgType OrgType { get; set; }

        /// <summary>
        /// 统一社会信用代码
        /// </summary> 
        public string CreditCode { get; set; }

        /// <summary>
        /// 联系人
        /// </summary>
        public string Contacts { get; set; }

        /// <summary>
        /// 联系电话
        /// </summary>
        public string Telephone { get; set; }

        /// <summary>
        /// 联系地址
        /// </summary>
        public string Address { get; set; }

        /// <summary>
        /// 备注
        /// </summary>

        public string Notes { get; set; }

        /// <summary>
        /// 是否禁用
        /// </summary>
        public bool IsDisabled { get; set; }

        /// <summary>
        /// 排序
        /// </summary>
        public int OrderSort { get; set; }
    }
}
